package day05;

import java.util.Arrays;

public class ArrayDemo {
    public static void main(String[] args) {
        /*
        //1)数组的定义
        //声明一个整型数组a，包含5个元素，每个元素都是int类型，默认值为0
        int[] a = new int[3];
        //声明一个浮点型数组d，包含10个元素，每个元素都是double类型，默认值为0.0
        double[] d = new double[10];
        //声明一个布尔型数组b，包含26个元素，每个元素都是boolean类型，默认值为false
        boolean[] b = new boolean[26];

        int[] arr = new int[3];
        int[] arr1 = new int[]{2, 5, 8};
        int[] arr2 = {2, 5, 8};
        int[] arr3;
        //arr={2,5,8}//编译错误，此方法只能声明同时初始化
        arr3 = new int[]{2, 5, 8};

//        int[] arr4 = new int[3];
//        System.out.println("数组的长度:"+arr4.length);
//        System.out.println("数组第一个元素为："+arr4[0]);
//        arr4[0]=100;
//        arr4[1]=200;
//        arr4[2]=300;
//        //arr4[4]=400;//运行时会发生下标越界异常
//        System.out.println(arr4[2]);
//        System.out.println(arr4[arr4.length-1]);
        int[] arr4 = new int[3];
        System.out.println("数组的长度："+arr4.length);
        System.out.println("数组的第一个元素为："+arr4[0]);
        arr4[0]=100;
        arr4[1]=200;
        arr4[2]=300;
        //arr4[3]=400;//运行时会发生下标越界异常
        System.out.println(arr4[2]);
        System.out.println(arr4[arr4.length-1]);
        */

        /*
        //数组的遍历/迭代
        int[] arr = new int[10];
        for(int i = 0 ; i < arr.length;i++){
            arr[i]=(int)(Math.random()*100);
            System.out.print(arr[i]+" ");
        }
         */

        //数组的复制
        /*
        int[] a ={10,20,30,40,50,60,70,80};
        int[] b = new int[9];
        //a:源数组
        //1：源数组的起始下标
        //b：目标数组
        //0：目标数组起始下标
        //4：要复制的元素个数
        System.arraycopy(a,4,b,2,4);
        for(int i = 0;i<a.length;i++){
            System.out.println(b[i]);
        }
         */

        int[] a ={10,20,30,40,50,60};
        //a:源数组
        //b:目标数组
        //6:目标数组长度
        //若目标数组长度>源数组长度，则末尾补默认值
        //若目标数组长度<源数组长度，则将末尾的截掉
        int[] b= Arrays.copyOf(a,7);
        for(int i = 0 ;i < b.length;i++){
            System.out.println(b[i]);
        }
    }
}
